package com.base.logistics.jdl.bean.print;

import java.io.Serializable;
import java.util.List;

/**
 * <pre>
 * 所有物流公司和用户标准模板列表
 * </pre>
 * @since 2021-02-19
 */
public class TemplateDTO  implements Serializable {

    /**
     * 所有物流公司标准模板列表
     */
    private List<StandardTemplate> sDatas;

    /**
     * 用户使用的模板
     */
    private List<UserTemplate> uDatas;

    /**
     * ISV自定义模板以及自定义项内容
     */
    private List<IsvResourceDo> diyDatas;

    /**
     * 商家自定义区内容
     */
    private List<CustomAreaDo> udiyDatas;

    public TemplateDTO() {
    }

    public List<StandardTemplate> getSDatas() {
        return this.sDatas;
    }

    public List<UserTemplate> getUDatas() {
        return this.uDatas;
    }

    public List<IsvResourceDo> getDiyDatas() {
        return this.diyDatas;
    }

    public List<CustomAreaDo> getUdiyDatas() {
        return this.udiyDatas;
    }

    public void setSDatas(List<StandardTemplate> sDatas) {
        this.sDatas = sDatas;
    }

    public void setUDatas(List<UserTemplate> uDatas) {
        this.uDatas = uDatas;
    }

    public void setDiyDatas(List<IsvResourceDo> diyDatas) {
        this.diyDatas = diyDatas;
    }

    public void setUdiyDatas(List<CustomAreaDo> udiyDatas) {
        this.udiyDatas = udiyDatas;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof TemplateDTO)) return false;
        final TemplateDTO other = (TemplateDTO) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$sDatas = this.getSDatas();
        final Object other$sDatas = other.getSDatas();
        if (this$sDatas == null ? other$sDatas != null : !this$sDatas.equals(other$sDatas)) return false;
        final Object this$uDatas = this.getUDatas();
        final Object other$uDatas = other.getUDatas();
        if (this$uDatas == null ? other$uDatas != null : !this$uDatas.equals(other$uDatas)) return false;
        final Object this$diyDatas = this.getDiyDatas();
        final Object other$diyDatas = other.getDiyDatas();
        if (this$diyDatas == null ? other$diyDatas != null : !this$diyDatas.equals(other$diyDatas)) return false;
        final Object this$udiyDatas = this.getUdiyDatas();
        final Object other$udiyDatas = other.getUdiyDatas();
        if (this$udiyDatas == null ? other$udiyDatas != null : !this$udiyDatas.equals(other$udiyDatas)) return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof TemplateDTO;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $sDatas = this.getSDatas();
        result = result * PRIME + ($sDatas == null ? 43 : $sDatas.hashCode());
        final Object $uDatas = this.getUDatas();
        result = result * PRIME + ($uDatas == null ? 43 : $uDatas.hashCode());
        final Object $diyDatas = this.getDiyDatas();
        result = result * PRIME + ($diyDatas == null ? 43 : $diyDatas.hashCode());
        final Object $udiyDatas = this.getUdiyDatas();
        result = result * PRIME + ($udiyDatas == null ? 43 : $udiyDatas.hashCode());
        return result;
    }

    public String toString() {
        return "TemplateDTO(sDatas=" + this.getSDatas() + ", uDatas=" + this.getUDatas() + ", diyDatas=" + this.getDiyDatas() + ", udiyDatas=" + this.getUdiyDatas() + ")";
    }
}
